草庐IT

php - Laravel 将 Http 重定向到 Https

全部标签

ruby - 如何在 Ruby 中临时重定向 stderr?

我想在一个block的持续时间内在Ruby脚本中临时重定向stderr,确保在block结束时将其重置为其原始值。我在ruby​​文档中找不到如何执行此操作。 最佳答案 在Ruby中,$stderr指的是当前作为标准错误的输出流,而STDERR是默认标准错误流。将不同的输出流临时分配给$stderr很容易。require"stringio"defcapture_stderr#TheoutputstreammustbeanIO-likeobject.Inthiscasewecaptureitin#anin-memoryIOobject

ruby - 处理来自 Net::HTTP 的异常的最佳方法是什么?

从Net::HTTP中拯救异常的最佳方法是什么?抛出的异常在Ruby的socket.c中有描述。,比如Errno::ETIMEDOUT,Errno::ECONNRESET,和Errno::ECONNREFUSED.所有这些的基类是SystemCallError,但写出如下代码感觉很奇怪,因为SystemCallError似乎距离制作HTTP还很遥远调用:beginresponse=Net::HTTP.get_response(uri)response.code=="200"rescueSystemCallErrorfalseend只有我吗?除了修复Net::HTTP之外,还有更好的方法

ruby - 如何在 ruby​​ net/http 中实现 cookie 支持?

我想为使用net/http浏览网页的ruby​​类添加cookie支持。Cookie必须存储在文件中才能在脚本结束后继续存在。当然我可以阅读规范并编写某种处理程序,使用某种cookie.txt格式等等,但这似乎意味着重新发明轮子。有没有更好的方法来完成这个任务?也许是某种cooiejar类来处理cookie? 最佳答案 如果您的服务器返回并需要多个cookie,则接受的答案将不起作用。例如,如果服务器返回一组FedAuth[n]cookie,就会发生这种情况。如果这对您有影响,您可能需要考虑使用以下内容:http=Net::HTTP

ruby - 强制 bundle 安装使用 https ://instead of git://for GitHub-based gems

我正在尝试构建一个Rails项目,因为我正在使用的主机无法访问Internet的git://协议(protocol)(端口9418),我收到如下错误Fetchinggit://github.com/pivotal/jasmine.gitfatal:unabletoconnecttogithub.com:github.com[0:192.30.252.130]:errno=Connectionrefused运行bundleinstall时。GemFile中的相关行没有指定git://作为协议(protocol),它只是指向GitHub作为gem的源gem'jasmine',:github

ruby-on-rails - 如何在 Rails Controller 中返回 HTTP 204

这看起来很基础,但我是Ruby/Rails初学者。我只需要在Controller中返回HTTP204。会respond_todo|format|format.htmlend返回204? 最佳答案 head:no_content使用Rails3.2.x、4.x测试。它会导致Controller方法以204NoContentHTTP状态代码进行响应。在名为foobar的Controller方法中使用它的示例:deffoobarhead:no_contentend 关于ruby-on-rail

ruby - 使用 Net::HTTP.get 获取 https url

我正在尝试将Net::HTTP.get()用于httpsURL:@data=Net::HTTP.get(uri,Net::HTTP.https_default_port())但是,当我尝试打印结果时得到以下结果:can'tconvertURI::HTTPSintoString这是怎么回事?我正在使用Ruby1.8.7(OSX) 最佳答案 原答案:uri=URI.parse("https://example.com/some/path")http=Net::HTTP.new(uri.host,uri.port)http.use_ssl

ruby-on-rails - rails - 将控制台输出重定向到文件

在bash控制台上,如果我这样做:cdmydirls-l>mydir.txt>运算符捕获标准输入并将其重定向到文件;所以我在mydir.txt而不是标准输出中得到了文件列表。有什么方法可以在Rails控制台上做类似的事情吗?我有一个ruby​​语句生成大量打印(~8k行),我希望能够完整地看到它,但控制台只“记住”最后1024行左右。所以我考虑重定向到一个文件-如果有人知道更好的选择,我会洗耳恭听。 最佳答案 快速的一次性解决方案:irb:001>f=File.new('statements.xml','w')irb:002>ff.

ruby-on-rails - 在 Rails 中测试时如何设置 HTTP_REFERER?

我正在尝试测试Controller,但出现此错误。我了解错误,但不知道如何解决。test:onCREATEto:userwithcompletelyinvalidemailshouldrespondwithredirect(UsersControllerTest):ActionController::RedirectBackError:NoHTTP_REFERERwassetintherequesttothisaction,soredirect_to:backcouldnotbecalledsuccessfully.Ifthisisatest,makesuretospecifyrequ

Ruby:如何通过 HTTP 将文件作为多部分/表单数据发布?

我想做一个HTTPPOST,看起来像从浏览器发布的HMTL表单。具体来说,发布一些文本字段和一个文件字段。发布文本字段很简单,net/httprdocs中有一个示例,但我不知道如何发布文件。Net::HTTP看起来不是最好的主意。curb看起来不错。 最佳答案 我喜欢RestClient.它封装了net/http等很酷的功能,比如多部分表单数据:require'rest_client'RestClient.post('http://localhost:3000/foo',:name_of_file_param=>File.new('

ruby - 如何通过 HTTP 下载二进制文件?

如何使用Ruby通过HTTP下载和保存二进制文件?URL是http://somedomain.net/flv/sample/sample.flv。我在Windows平台上,我不想运行任何外部程序。 最佳答案 最简单的方法是特定于平台的解决方案:#!/usr/bin/envruby`wgethttp://somedomain.net/flv/sample/sample.flv`您可能正在寻找:require'net/http'#Mustbesomedomain.netinsteadofsomedomain.net/,otherwise